package model;

// Generated 04-oct-2013 11:33:27 by Hibernate Tools 3.4.0.CR1

import javax.persistence.AttributeOverride;
import javax.persistence.AttributeOverrides;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.OneToOne;
import javax.persistence.Table;

import org.hibernate.annotations.NamedQueries;
import org.hibernate.annotations.NamedQuery;

/**
 * Invitacion generated by hbm2java
 */
@Entity
@Table(name = "invitacion", catalog = "`tt2012-b036`")
@NamedQueries({ @NamedQuery(name = "Invitacion.getPendientes", query = "from Invitacion i where "
		+ "(i.id.fkInvitado = :username and (i.fkNotificacion = 4 or i.fkNotificacion = 5 or i.fkNotificacion = 6 or i.fkNotificacion = 1 or i.fkNotificacion = 7))"
		+ "or (i.id.fkUsuarioPropietario = :username and (i.fkNotificacion = 2 or i.fkNotificacion = 3))") })
public class Invitacion implements java.io.Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	private InvitacionId id;
	private int fkNotificacion;
	private String pregunta;
	private String respuesta;

	public Invitacion() {
	}

	public Invitacion(InvitacionId id, String pregunta) {
		this.id = id;
		this.pregunta = pregunta;
	}

	public Invitacion(InvitacionId id, String pregunta, String respuesta) {
		this.id = id;
		this.pregunta = pregunta;
		this.respuesta = respuesta;
	}

	@EmbeddedId
	@AttributeOverrides({
			@AttributeOverride(name = "fkUsuarioPropietario", column = @Column(name = "fkUsuarioPropietario", nullable = false, length = 15)),
			@AttributeOverride(name = "fkGrupo", column = @Column(name = "fkGrupo", nullable = false, length = 25)),
			@AttributeOverride(name = "fkInvitado", column = @Column(name = "fkInvitado", nullable = false, length = 15)) })
	public InvitacionId getId() {
		if (id == null)
			id = new InvitacionId();
		return this.id;
	}

	public void setId(InvitacionId id) {
		this.id = id;
	}

	@Column(name = "Pregunta", nullable = false, length = 45)
	public String getPregunta() {
		return this.pregunta;
	}

	public void setPregunta(String pregunta) {
		this.pregunta = pregunta;
	}

	@Column(name = "Respuesta", length = 45)
	public String getRespuesta() {
		return this.respuesta;
	}

	public void setRespuesta(String respuesta) {
		this.respuesta = respuesta;
	}

	@Column(name = "fkNotificacion", nullable = false)
	public int getFkNotificacion() {
		return fkNotificacion;
	}

	public void setFkNotificacion(int fkNotificacion) {
		this.fkNotificacion = fkNotificacion;
	}

}
